专利摘要:
PURPOSE: A device and a method for compressing protocol header in a communication system are provided to increase efficiency of a communication link by reducing header configuration of UDP/IP/PPP protocols, thereby speeding up the communication link. CONSTITUTION: A header encapsulator(401) receives UDP(User Datagram Protocol), IP(Internet Protocol), PPP(Point to Point Protocol) packets from an upper protocol layer and extracts headers from the packets for compressing the headers as compression header at the predetermined size and transmitting to a lower protocol layer. A header decapsulator(402) receives the compressed packets through a communication link and releases the compressed packets for disassembling the compressed packets into the original UDP, IP, PPP packets and transmitting the packets to the upper protocol layer. A header database(403) stores information for header compression and release of the encapsulator(401) and the decapsulator(402). A connection tracer(404) drives functions related to connection set-up and connection release of the PPP.
公开号:KR20020017291A
申请号:KR1020000050505
申请日:2000-08-29
公开日:2002-03-07
发明作者:이성원
申请人:윤종용;삼성전자 주식회사;
IPC主号:
专利说明:

Apparatus and method for compressing protocol header in communication system {APPARATUS AND METHOD FOR COMPRESSING PROTOCOL HEADER IN COMMUNICATION SYSTEM}
[21] The present invention relates to an apparatus and method for compressing a protocol header in a communication system. In particular, UDP / IP / Internet Protocol / UDP / IP can be smoothly supported in a wired or wireless low-speed Internet environment for a user datagram protocol (UDP) based connectionless communication service. An apparatus and method for reducing a protocol header of a PPP (Point to Point Protocol).
[22] In particular, the present invention proposes a method for effectively supporting packet voice and packet video services in a low-speed Internet environment in consideration of the most commonly used Real-time Transport Protocol (RTP) when supporting multimedia services on the Internet. . Through this, RTP / UDP / IP / PPP-based services are smoothly supported in low-speed wired communication environment, and in addition, it is possible to efficiently provide Internet telephony and Internet video service while maintaining compatibility with wired network even in wireless communication environment such as CDMA2000. In particular, when used for Internet telephony in a wireless environment such as CDMA2000, the wireless end can support the service at the same or lower price than the existing line-type telephone, and the cost of the wired network is greatly reduced compared to the conventional line-type voice telephone. It provides the advantages.
[23] Currently, there is no proposal for compressing and decompressing headers of UDP / IP packets, which are connectionless communication protocols, or compressing and decompressing headers of RTP packets, and as a related art, TCP (Transport Control Protocol) / There is a way to compress and decompress the header of the IP. That is, in the conventional technology, there was no scheme for compressing and decompressing headers of UDP / IP / PPP and RTP.
[24] In a similar field, a technique for compressing the header of TCP / IP is currently proposed by Van Jacobson. It is published as RFC1144 "Compressing TCP / IP Header" by the Internet Engineering Task Force (IETF). Van Jacobson proposes a technique for compressing and decompressing headers of TCP / IP in PPP in order to facilitate transmission of TCP / IP packets on a low speed serial link. (V. Jacobson, "Compressing TCP / IP Header for Low-Speed Serial Links", Fed 1990. http://ieff.org/rfc/rfc1144.txt)
[25] In Van Jacobson's scheme, TCP / IP header compression is performed by the compressor of the transmitter PPP, and decompression is performed by the decompressor of the receiver PPP. For reference, a frame structure of a TCP packet and a frame structure of an IP packet which are not compressed are illustrated in FIGS. 1 and 2, respectively.
[26] The compressor uses IP packets as input information and outputs all input packets in three types. The three types are TYPE_IP, UNCOMPRESSED_TCP or COMPRESSED_TCP.
[27] The "TYPE_IP" packet is a case where the type of IP input to the compressor is maintained without being compressed and output. The "UNCOMPRESSED_TCP" packet is a case where only the protocol field of the IP packet is changed to a connection no or connect no field without modifying other fields. The "COMPRESSED_TCP" packet is a case where the header structure is changed to a completely new structure through TCP / IP header compression. The new TCP / IP header structure through compression is shown in FIG. 3.
[28] Hereinafter, the operation of the compressor will be described.
[29] First, the case of transmitting by TYPE_IP is as follows.
[30] Condition 1: If the packet is not a packet of the TCP protocol or the packet is a fragment of an IP packet, the packet is transmitted to the TYPE_IP. In this case, the fragmented IP packet does not have a TCP header except for the first one, and thus does not support compression for a packet having only an IP packet.
[31] Condition 2: If the SYN, FIN or RST flag of a TCP packet is set, the packet is sent to TYPE_IP.
[32] Packets which do not correspond to the above conditions are transmitted to the "COMPRESSED_TCP" or "UNCOMPRESSED_TCP".
[33] On the other hand, the proposed scheme of "Van Jacobson" manages the information called the connection state (connection state) at the transmitting end. The connection state manages field values included in the TCP or IP header, and the connection is a source address of the IP packet, a destination address, and a source port of the TCP packet. It is identified by (source port) and destination port (destination port).
[34] Condition 1: If there is no connection state with the same address and port number as the arrived IP packet, the sender creates a connection state for the packet and transmits the packet in the form of "UNCOMPRESSED_TCP". do.
[35] Condition 2: If there is a connection state having the same address and port number as the arrived IP packet, the compressor is configured to have {Protocol Version, Header Length, Type of Service, DF & MF Flags, Fragment Offset, Time to Live, Protocol, Source Address, Destination Address, Source Port, Destination Port, Data Offset, ACK, SYN, RST, and FIN} Checks whether the values in the connection are the same as those stored in the connection. In other words, it checks whether the information value of the previously transmitted packet is the same. If the fields have different values, the packet is transmitted to the "UNCOMPRESSED_TCP".
[36] On the other hand, if the arrived IP packet does not meet the conditions described above, the compressor continues to perform the following operation.
[37] Condition 1: If the "URG" flag of TCP is set, the "urgent data" field is encoded, and the U bit in the "change mask" of FIG. 3 is set. If the "URG" flag is not set, the contents of the "urgent data" field are compared with the previous packet. If the contents are different, the "UNCOMPRESSED_TCP" packet is transmitted.
[38] Condition 2: If the "window" field value of TCP is different from the "window" value of the previous packet, set the W bit in the "change mask" of FIG. 3 and encode the difference value of the "windoe" field.
[39] Condition 3: If the "ACK" field value of TCP is different from the value of the previous packet, set the A bit in the "change mask" of FIG. 3 and encode the difference value of the "ACK" field. In this case, when the difference value is "0" or less or more than 216-1, the "UNCOMPRESSED_TCP" packet is transmitted.
[40] Condition 4: If the value of the "sequence number" field of TCP is different from that of the previous packet, set the S bit in the "change mask" of FIG. 3 and encode the difference value of the "sequence number" field. In this case, when the difference value is "0" or less or more than 216-1, the "UNCOMPRESSED_TCP" packet is transmitted.
[41] As described above, when the U, W, A, and S bits of the change mask are set, the following special case is performed.
[42] Condition 1: If only the S bit is set, the size of user data excluding the header of TCP / IP is compared with the previous packet. In this case, if the packet sizes are the same, the change mask is set to SAWU (special case for "unidirectional data transfer"), and the encoded sequence number is removed. At this time, since the decompressor knows the total length and the header length of the previous packet, there is no problem in communication.
[43] Condition 2: If the S and A bits are set and the degree of change of the field values for S and A is the same and the amount of change is the amount of user data in the last packet, then for SWU ("echoed interactive" traffic) Special case) and remove the encoded changes.
[44] Condition 3: If there is no changed field and there is no user data or has data of a previous packet, the "UNCOMPRESSED_TCP" is transmitted in consideration of retransmission.
[45] Finally, the TCP / IP header is changed to a compressed header and sent. The corresponding tasks are as follows.
[46] First, the degree of change from the previous packet to the Packet ID (Identification) value of the IP packet is calculated. If the change degree is not 1, the I bit of the change mask is set and the difference value is encoded. (Identification generally increases by 1 after every packet transmission.) If TCP's PUSH is set, the P bit of the change mask is set. After that, the header information of the TCP / IP is stored in the connection state of the transmitting end. Then, the newly created TCP / IP header is inserted into the packet. The newly created packet includes the following information.
[47] ① encoded changes
[48] ② The value of the checksum field extracted from the arrived TCP header
[49] ③ connection number-insert only if previous packet and current packet are different
[50] ④ Change mask
[51] The decompressor of the receiver performs a simpler process compared to the operation of the compressor described above. The releaser operates {packet length, packet type, connection state information} as input parameters. The releaser can receive four types of packets. These become "TYPE_IP", "COMPRESSED_TCP" and "UNCOMPRESSED_TCP" generated by the transmitting end, and "TYPE_ERROR" caused by a transmission error.
[52] Condition 1: If a TYPE_ERROR or unidentifiable packet is received, the receiver sets the 'toss' flag. In addition, the packet and subsequent packets are discarded until the COMPRESSED_TCP or UNCOMPRESSED_TCP with the C bit set arrives.
[53] Condition 2: If a TYPE_IP packet arrives, an unmodified copy is returned, and the relevant status information is not modified.
[54] Condition 3: If a UNCOMPRESSED_TCP packet arrives, check the IP protocol field and status information at the receiving end. In this case, if the packet is invalid, the 'toss' flag is set and the packet is discarded. In the case of a valid packet, the "toss" flag is released and the information of the packet is stored as state information of the receiving end. The decompressed packet header is generated based on the received information.
[55] A packet that does not meet the above conditions is a "COMPRESSED_TCP" packet. Therefore, in order to decompress the received packet header, information of a previously received packet is extracted from the state information of the receiving end through the connection number. Then, a newly updated header should be created based on the information of the received packet and the information of the previous packet. The corresponding contents are as follows.
[56] Condition 1: If the C bit is set, the receiver's status information is retrieved through the connection number of the packet. If there is no information on the connection number in the receiver, the packet is discarded and the "toss" flag is set. If the C bit is not set, the connection number of the last received packet is used as the connection number of the packet, and the "toss" flag is released.
[57] Condition 2: If the C bit is not set and the "toss" flag is set, the packet is discarded.
[58] In addition, the detailed field reconstruction procedure is as follows.
[59] First, the TCP checksum field is stored in the reconstruction buffer as it is.
[60] Here, if the P bit is set, the TCP PUSH bit is set and stored in the reconfiguration buffer. Otherwise, save it without setting. If the S, A, W, and U bits are all set (unidirectional data), the user data field size of the last received packet is calculated by subtracting the TCP / IP header length of the received packet. The calculated value is added to the TCP sequence number and stored in the reconstruction buffer. If the S, W, and U bits are set (terminal traffic), the size of the user data field of the last received packet is added to the TCP sequence number and the ack field and stored in the reconstruction buffer. Finally, if the above is not the case, follow the procedure below.
[61] If the U bit is set, the TCP URG bit is set and stored in the reconfiguration buffer, and the value of the urgent pntr field is assigned to the TCP Urgent Pointer field value and stored in the reconfiguration buffer. If the W bit is set, the value of the _d window field is added to the previously received TCP window field value and stored in the reconstruction buffer. If the A bit is set, the value of the _d ack field is added to the previously received TCP ack field value and stored in the reconfiguration buffer. If the S bit is set, the value of the _d sequence field is added to the previously received TCP sequence field value and stored in the reconstruction buffer. If the I bit is set, the value of the _d IP ID field is added to the previously received TCP Identifier field value and stored in the reconfiguration buffer. Thereafter, the length of the header and data information is calculated and stored in the reconstruction buffer, and the checksum value of the IP is recalculated and stored in the reconstruction buffer. This completes the reconstructed TCP / IP packet.
[62] As described above, the problem of the scheme proposed by "Van Jacobson" is that TCP / IP is considered as an object and is not suitable for the environment of UDP / IP. If information of a field (generally, information of a field with little change) that is not transmitted as a 'difference value' from a previous packet is changed, there is a problem in that the entire packet header is transmitted. That is, there is no function of transmitting only the information of the changed field.
[63] In addition, since the scheme is proposed assuming the minimum size structure of the header, no support method is described when the option information is loaded in the TCP / IP header. Thus, in this case, the entire header must be transmitted as it is, that is, a compression scheme cannot be supported.
[64] In addition, the proposal of "Van Jacobson" relies solely on the method of transmitting the 'difference value', so that if the header transmitting the 'difference value' is discarded due to an error in the middle, the packets continuously received are totally rejected. The header should be discarded until the uncompressed packet is received and the error recovery function should be supported through TCP retransmission. However, the "Van Jacoban" scheme does not consider retransmission, and has a problem that causes a fatal performance degradation in UDP packets mainly transmitting delay sensitive traffic. That is, in the case of an error such as an Internet phone, packets are discarded until the entire header is received, resulting in an inability to talk.
[65] Accordingly, an object of the present invention is to provide a method for effectively supporting communication services based on UDP, IP, IPv4 & IPv6, and PPP protocols in low-speed wired / wireless serial communication devices.
[66] Another object of the present invention is to minimize the header size of UDP, IP, IPv4 & IPv6, and PPP protocols, which are currently used as the main technologies of Internet multimedia services, and to provide more communication capacity for transmitting and receiving actual user traffic. In providing.
[67] Another object of the present invention is to propose a method for effectively using an Internet telephone in a band below a bandwidth requirement level of a conventional line type voice service in a wireless communication network.
[68] Another object of the present invention is to provide an apparatus and method for supporting real-time multimedia services based on a connectionless UDP communication protocol.
[69] A method for compressing UDP, IP, and PPP packet headers into a compression header of a predetermined size in a communication system based on the UDP / IP / PPP communication protocol for achieving the above objects, the compression header is an LR, U, M flag At least a channel identifier field (CH-ID), a length information field (LENGTH), an IP information field (IP-INFO), a protocol field (PROTOCOL), a checksum field (UDP CHECKSUM), and an additional field (OPTIONAL FIELD). Receiving the UDP, IP, and PPP packets from an upper protocol layer unit, recording connection identification information on the established communication link in the channel identifier field and setting the R flag; Recording in a length information field, setting the L flag, modifying an IDENTIFICATION value of the IP packet according to a predetermined rule, and writing the same in the IP information field; and a protocol field value of the PPP packet. Characterized by comprising a recording step of recording in said protocol field, a checksum field value of the UDP packet to the checksum field, and the step of generating the base compressed header by setting the U flag.
[1] 1 is a diagram illustrating a TCP packet structure.
[2] 2 illustrates an IPv4 packet structure.
[3] 3 illustrates a compressed TCP / IP packet structure according to Van Jacobson's scheme according to the prior art.
[4] 4 is a diagram illustrating an apparatus for compressing and decompressing UDP / IP / PPP control information according to the present invention;
[5] 5 illustrates an IPv6 packet structure.
[6] 6 illustrates a packet header database structure in accordance with the present invention.
[7] 7 illustrates a UDP packet structure.
[8] 8 illustrates a PPP packet structure.
[9] 9 illustrates a packet structure generated by UDP / IP / PPP control information compression according to the present invention.
[10] 10 is a diagram showing the structure of a change field according to the present invention;
[11] 11 is a diagram showing the structure of an additional field according to the present invention;
[12] 12 is a diagram illustrating an apparatus for compressing and decompressing UDP / IP / PPP control information used in a wired environment according to an embodiment of the present invention.
[13] FIG. 13 is a diagram illustrating a UDP / IP / PPP control information compression and decompression apparatus used in a wireless environment according to an embodiment of the present invention. FIG.
[14] 14 illustrates an RLP packet structure.
[15] 15 illustrates an RTP packet header structure.
[16] 16 illustrates a packet header structure generated according to RTP / UDP / IP / PPP header compression according to the present invention.
[17] 17 illustrates a packet header structure generated according to RTP / UDP / IP / PPP header compression according to the present invention.
[18] 18 is a diagram illustrating a call setup process according to an embodiment of the present invention.
[19] 19A and 19B illustrate a packet header compression process according to an embodiment of the present invention.
[20] 20 is a diagram illustrating a process of releasing a compressed header according to an embodiment of the present invention.
[70] Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. First, in adding the reference numerals to the components of each drawing, the same components have the same reference numerals as much as possible even if displayed on different drawings. In describing the present invention, when it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
[71] Fields in which the present invention can be most effectively used are IS95A, IS95B, cdma2000 and IMT2000, which are existing wireless communication networks, together with low-speed wired networks. The wireless communication networks support subscribers with low speed communication channels compared to wired networks. Therefore, minimizing control information such as packet headers is required in order to effectively use a limited radio channel.
[72] In particular, even in the case of the recent explosive activation of the Internet phone, the current wireless communication network structure and communication protocol are not supported by the wireless communication network or the cost is very high, but there is no market. In comparison, lower cost implementations are possible.
[73] Internet phones, which are growing rapidly at present, basically take the form of compressing voice like mobile phones. This is called 'voice compression' and this is done through a compression device called a vocoder. The core of the vocoder is the speech compression method, and the module that performs it is called a codec.
[74] The codecs used for the Internet telephony are G.729 and G.723.1, which are standards of the International Telecommunication Unions (TTU) -T. The ITU-T G.729 requires a band of 8 kbps and generates a voice frame every 10 ms. In this case, 80 bits are generated in the talk-activated section and 15 bits in the deactivated silence section. In addition, when used in a wired network, the 'silence compression' function that removes traffic in an inactive section leads to more efficient use of a communication band. Therefore, G.729-based Internet telephony generates 264 bits of header information and 80 bits of voice information every 10 ms upon activation.
[75] Meanwhile, the ITU-T G.723.1 requires a band of 6.3 kbps or 5.4 kbps and generates a voice frame every 30 ms. At this time, the voice traffic generates 192bits or 160bits respectively when activated. G.723.1, like G.729, provides 'silencecompression' and provides additional support for wireless environments. Therefore, when using G.723.1, 264 bits of header information and 192 bits or 160 bits of voice traffic information are generated every 30 ms.
[76] In this regard, existing wireless communication systems such as IS95A, IS95B, Personal Communication Service (PCS) and Global System for Mobile communications (GSM) have supported voice services over low speed channels of 9.6 kbps or 14.4 kbps. Therefore, if the radio band exceeds 9.6kbps or 14.4kbps to support the Internet telephony service based on G.729 or G.723.1, the cost of the wireless terminal is basically increased further. Therefore, an Internet phone supporting G.729 or G.723.1 should be supported in the same or less than 9.6kbps or 14.4kbps band in the wireless situation.
[77] However, as described above, in the absence of header compression of UDP, IPv4 & IPv6, and PPP, G.729 and G.723.1 have capacities of 688bits / 20ms and 456bits (or 424bits) / 30ms, respectively. This is much higher than the 160bits / 20ms that the 9.6kbps network can support or the 256bits / 20ms that the 14.4kbps mobile network can support. In particular, in this case, considering the header of RTP, which is increasingly used in Internet telephony, the exceeding demand is even greater. In addition, in case of IPv6, overhead is further required as the size of the address field increases from 4 bytes to 16 bytes of IPv4. In conclusion, if the headers of the current UDP, IPv4 & IPv6, PPP, and RTP are used as they are, effective UDP-based services and Internet telephony cannot be supported in the wireless communication system. In addition, most expensive low-speed radio bands are used for header transmission, resulting in very low efficiency.
[78] Therefore, the present invention proposes a method for effectively using the current Internet telephone in a band below the bandwidth requirement level of the existing line type voice service even in a wireless communication network. In particular, this scheme can significantly reduce the cost required to build a wireless network by inducing a restructuring of a wireless communication network structure centering on a conventional line-type dedicated line into a packet communication scheme.
[79] It will be described below in detail with reference to the drawings.
[80] A header optimizer (hereinafter, referred to as an optimizer) that is a UDP / IPv4 & IPv6 / PPP header compression and decompression device according to an embodiment of the present invention is largely referred to as a header encapsulator (Header Encapsulator). 401, a header decapsulator (hereinafter referred to as a decapsulator) 402, a packet header database (hereinafter referred to as a header database) 403 and a connection tracer (404). . In the following description, IP is a generic term for IPv4 and IPv6.
[81] Implementation of the optimizer proposed in the present invention can be made in the following manner. First, like Van Jacobson's TCP / IP header compression scheme, it can be implemented as an extension of the PPP link protocol, secondly as a new protocol layer between existing PPP and lower communication protocols, and third It can be implemented as an extended function of RLP (Radio Link Protocol) communication protocol in the network. The present invention does not differ in performance no matter which of the above forms. In order to facilitate the description of the invention, it is assumed that the present invention is applied by the first method unless otherwise specified. In addition, the present invention supports both simplex and half duplex (full duplex) communication schemes. Thus, the optimizer has a pair of encapsulators and decapsulators for header compression.
[82] Referring to FIG. 4, the encapsulator 401 receives a PPP frame (UDP / IP / PPP PACKET), performs compression of a UDP / IPv4 & IPv6 / PPP header, and then outputs an output communication link or a lower communication layer. Perform the function of passing. The decapsulator 402 extracts the compressed UDP / IPv4 & IPv6 / PPP header from the PPP frame received through the communication link, decompresses the packet in its original form, and transmits the decapsulator 402 to the upper protocol of the protocol structure. The header database (H-DB) 403 is a memory that stores information necessary for performing compression of the UDP / IPv4 & IPv6 / PPP header. The connection tracer 404 analyzes PPP connection establishment and release-related messages or detects new establishment and release of a PPP connection in conjunction with a connection establishment and release function of the PPP, and drives a function of an associated optimizer. do.
[83] As shown in FIG. 6, the header database 403 is configured as a connection identifier (CONN-ID) for identifying a logical communication connection to be compressed and an information storage portion related to the connection. The connection identifier may allocate the following information according to the purpose of implementation.
[84] Case 1: <Source Address (IP), Destination Address (IP), Source Port (UDP), Destination Port (UDP)>
[85] Case 2: <Source Address (IP), Destination Address (IP), Source Port (UDP), Destination Port (UDP), Protocol Field (IP)>
[86] Case 3: <Source Address (IP), Destination Address (IP), Source Port (UDP), Destination Port (UDP), Protocol Field (IP), Protocol Field (UDP)>
[87] Case 1 is an identifier used for general purposes. That is, when the IP address and the UDP port number of the transmitting end and the receiving end are different, a different connection identifier (CONN-ID) is allocated. Case 2 and Case 3 are cases in which a protocol field value of IP or UDP is used in addition to Case 1, and more specifically, it is used to distinguish the connection identifier (CONN-ID). In particular, when using IPv6, identification using "Traffic Class" and "Flow Label" of IPv6 may be considered. The information on each link identified by the connection identifier (CONN-ID) is defined as each field constituting the header of UDP / IPv4 & IPv6 / PPP shown in FIG. Accordingly, the header optimizer continuously updates the UDP / IPv4 & IPv6 / PPP header information of the connections identified by the connection identifier (CONN-ID) in the header database 403. Through this, the encapsulator 401 may calculate a field and a value to be transmitted, and the receiver may retrieve information for reconstruction of the packet header.
[88] Hereinafter, a specific operation according to the present invention will be described.
[89] The operation of the present invention can be largely composed of four steps. The first step is to set up a PPP end-to-end connection. The main tasks performed at this time are the assignment of a connection identifier (CONN-ID) for the connection and the creation and initialization of fields related to the connection identifier in the header database. When a connection is made between PPP end points through the 'call setup process', a step for transmitting and receiving PPP traffic is entered. In this step, the encapsulator 401 performs a 'packet compression process' related operation of compressing a header of a UDP / IPv4 & IPv6 / PPP packet received from an upper protocol and updating related header database (H-DB) information. In addition, the decapsulator 402 receives a PPP frame received from a communication link or a lower communication protocol, decompresses the UDP / IPv4 & IPv6 / PPP header in the frame, and restores the packet to the original UDP / IPv4 & IPv6 / PPP header. Decompression 'related work. Finally, it consists of the 'call release process' step. Detailed procedures for each process will be described below.
[90] <Call setup process>
[91] 18 illustrates a call setup process according to an embodiment of the present invention.
[92] Referring to FIG. 18, first, when an end-to-end communication link is established at the request of a user (or a higher process) in step 1801, the optimizer determines an IP source address and an IP destination address of the connection in step 1803. (Destination Address), UDP Source Port, and UDP Destination Port are identified to check whether a field for the connection exists in the header database 403. Here, an IP Protocol Field and an UDP ProtocolField may be additionally used. In this case, the optimizer does not participate in the case where the packet is not a UDP packet. In this case, as described above, "Traffic Class" and "Flow Label" of the IPv4 header may also be considered as identification information.
[93] If it is determined in step 1805 that the connection identifier having the same information exists after checking the header database 403, it is checked in step 1815 whether one or more multiple links are allowed between the ends of the communication link. If more than one link is allowed between the same end, the process proceeds to step 1817 to use the same connection identifier present in the header database 403 to support a method of sharing values of fields related to the connection identifier. Otherwise, in step 1807, in allocating the connection identifier between the corresponding end-points, the above-mentioned case 1 → case 2 → case 3 is extended to support identification between the two connections. When the connection identifier (CONN-ID) for the connection is set as described above, fields for the connection identifier are generated in the header database 403.
[94] Thereafter, in step 1811, it is checked whether first packets (UDP, IP, PPP packets) are received from an upper protocol layer through a corresponding connection at a predetermined transmission time point. If the first frame is received, the information of the UDP / IP / PPP header of the first frame received in step 1813 is copied into the fields of the header database 403 corresponding to the connection identifier of the connection. When the copy is completed, the value of the connection identifier is added as the first field of the first packet, and subsequent original UDP / IP / PPP header fields are transmitted to the receiver without compression.
[95] Fields copied by the sender's encapsulator 401 from the first packet to the header database 403 are as follows. The length of some fields may vary depending on conditions, and the lengths described below assume the most general case. Here, the UDP packet field copied to the header database 403 is shown in FIG. 7, and the PPP packet field is shown in FIG. 8.
[96] As shown in FIG. 7, the UDP packet field copied to the header database 403 is composed of 8 bytes (64 bits), a source port field (16 bits) in which a port number of a transmission process is recorded, A destination port field (16 bits) in which the port number of the receiving processor context is recorded, a length field (16 bits) in which the octet unit size (including a header) of the datagram is recorded, and error detector information are recorded. It consists of a Checksum field (16 bits) field.
[97] The IPv4 packet field copied to the header database 403 is composed of 20 bytes (160 bits) + an option field length, a Version field (4 bits) for recording the format of the Internet header, and a length of the Internet header. IHL field (4 bits), Type of Service field (8 bits) for recording service type and identifier, Total Length field (16 bits) for recording length plus header and user data part, IP packet identifier (datagram) Identification field (16 bits) to record the segment), Flags field (3 bits) to record the Fragment control flag, Fragment Offset field (15 bits) to record the position indicator in the datagram of the information when the fragment, the network Time to Live field (8 bits) to record the allowed time of packet spooling, Protocol field (8 bits) to record the protocol identifier of Internet datagram use, Header Checksum field (16) to record header error checker bits), a Source Addr field (32 bits) for recording the sender address, and a Destination Addr field (32 bits) for recording the receiver address.
[98] The IPv6 packet field copied to the header database 403 is composed of 40 bytes (320 bits), a Version field (4 bit) for recording the format of the Internet header, and a traffic for packet identification having different classes and priorities. Class field (8 bits), Flow Label field (20 bits) for recording the packet stream identification of the transmitter and receiver, payload length field (16 bits) for recording the amount of information contained in the packet, Next Header field (8 bits) for recording the header information ), A Hop Limit field (8 bits) for controlling the maximum allowed routing hop in the packet network, a Source Addr (128 bit) for recording the sender's IPv6 address, and a Destination Addr field (128 bit) for the receiver's IPv6 address.
[99] Finally, as shown in FIG. 8, the PPP packet field copied to the header database 403 is 5/7 bytes (40/56 bits), and an Address field (8 bits) in which '11111111' is recorded, and '00000011'. Is composed of a Control field (8 bits) recorded with ', a Protocol field (8/16 bits) recorded with a protocol identifier using a datagram, and an FCS field (16/32 bits) recorded with an error checker.
[100] Along with the information of the above fields, a sequence field for managing the order of the compressed header is generated in the header database 403. The sequence field stores the remaining value obtained by dividing the IP sequence by 65.
[101] On the other hand, upon receiving the first packet, the decapsulator 402 of the receiving end initializes the header database 403 like the encapsulator 401 and includes the connection information set as the identifier of the first header field of the received frame as an identifier. Create a field. After storing the sequence field value in its header database 403, the decapsulator 401 copies the received UDP / IPv4 & IPv6 / PPP header information into the header database 403 as it is, and removes the connection identifier of the packet. Deliver to higher protocol or user.
[102] <Packet Header Compression Process>
[103] 19A and 19B illustrate a packet header compression process according to an embodiment of the present invention. The UDP / IP / PPP packet header compression scheme supported by the present invention firstly transmits fields that are almost unchanged after connection establishment only at the 'point of change', and secondly, the value of the variable that changes frequently. In this case, it is basically based on a method of transmitting only the minimum information necessary for communication between both parties and transmitting the entire field value only when necessary. Third, unlike Van Jacobson's method, which transmits the entire header even when additional control information corresponding to the IP option is transmitted, only the additional fields are added to the compressed header and transmitted. In particular, it does not consider the 'difference value' transmission scheme that may cause complex retransmissions considering the support in wireless communication. Therefore, when an error occurs while only the 'difference value' is transmitted, Van Jacobson solves the problem that the packets cannot be translated until the entire header is received.
[104] Referring to FIG. 19, in step 1901, a connection identifier (CONN-ID) value of a corresponding connection is copied to a channel identifier (CH-ID) field of a header database, and an R field is set to "0". In operation 1903, the UDP packet length is greater than "255" octec. If the packet length does not exceed 255 octets, the flow proceeds to step 1905 to store the length field of the UDP header as the length field of the compressed header and set the L flag to "0". On the other hand, if the length exceeds 255 octets, the process proceeds to step 1933 and sets the L flag to "1" and uses a 16-bit length field.
[105] In operation 1907, it is checked whether IPv4 is used. If used, the process proceeds to step 1931 to modify the Identification field value of the IPv4 packet as shown in Equation 1 to store the modified value in the 'IP-INFO' field.
[106] IP-INFO = IPv4 Identification% 65
[107] If IPv6 is used, the process proceeds to step 1909 and the 'IP-INFO' field is inserted as Next Header information of the IPv6 header. Thereafter, in step 1911, the Protocol field value of the PPP header is stored as a Protocol field. According to Protocol Header Compression of RFC1661, PPP is fixed to 8 bits field, and checks whether the service requires UDP checksum in 1913. If checksum is required, checksum of UDP header Store the field value in the UDP Checksum field and set the U flag to 1. If the traffic attribute does not require a checksum, set the U flag to "0" and remove the UDP checksum field.
[108] Headers generated through the above process are fields that should always be maintained in UDP / IP / PPP based communication. The fields of the UDP / IP / PPP protocol excluded in the above process generally mean fields that do not change during packet transmission and reception. Therefore, in general, when fields having fixed values are changed, the values of the corresponding fields are added to the basic header structure generated as described above. 9 is a diagram illustrating a basic header structure generated as described above.
[109] When fields having fixed values are changed, a field identification table as shown in Table 1 below is required to add the value of the corresponding field to the basic header structure.
[110] Total Length, Time to Live, Header Checksum, and Frame Check Sequence set to 'NOTE # 1' in the field identification table are fields in which different values are transmitted for each packet, but are not transmitted as additional information even if the values of these fields change. . Nevertheless, the reason for defining these fields in the table is to extend the functions for future control purposes. Therefore, in the header compression step described below, the condition according to the above four fields is not considered.
[111] Field name protocol Field size (octet) Identifier AddressPPPOne10 ControlOne11 VersionIPv4One12 IHLOne13 Type of serviceOne14 Total Length NOTE # 1 215 FlagsOne16 Fragment Offset217 Time to Live NOTE # 1 One18 ProtocolOne19 Header Checksum NOTE # 1 220 Source Address421 Destination Address422 Source PortUDP223 Destination port224 Frame Check Sequence NOTE # 1 PPP425 VersionIPv6426 Traffic class827 Flow label2028 Payload Length1629 Next Header830 Hop Limit NOTE # 1 831 Source Address12832 Destination Address12833 OptionsIPVariable00
[112] When the basic header structure is generated as described above, the encapsulator 401 compares the values of the fields in Table 1 with previous packet values stored in the header database 403 in step 1915. If a field different from the value of the previous packet is detected, the process proceeds to step 1917 and sets the M flag of the basic compression header of FIG. 9 to "1". Otherwise, the M flag of the basic compression header is set to "0". Here, the field whose value is changed is added to the last part of the basic compression header in the form shown in FIG. 10. That is, the identifier of the field changed in step 1919 is inserted into the field identifier, and the value of the corresponding field is inserted into the field information and added as a basic compression header. If the field having the changed value is found again, the M flag of the last added field identifier is set to "1", and then the corresponding field is added through the same operation. After checking up to the Destination Port field, set the M flag of the last added field to "0".
[113] In step 1921, the encapsulator 401 checks whether there is an Options field in the IP header of the received packet. If the option field is present, the M flag of the last changed field is set to '1' in step 1923. If there is no changed field, the M flag of the basic compression header is set to '1'. . The encapsulator 401 adds an additional field having the structure of FIG. 11 to the end of the compression header. In operation 1925, the field identifier is set to '00', the length of the additional additional field is added to the length field LENGTH, and the content of the additional field is added. In step 1927, the M flag is set to '0', and in step 1929, the user data field is added to the compressed header generated as described above. Then, a packet having a compression header is transmitted to an end through a communication link or transferred to a lower communication protocol.
[114] <Packet Header Release Process>
[115] 20 illustrates a process of decompressing a packet header according to an embodiment of the present invention. The process of decompressing a compressed packet is simpler than the process of performing the above compression.
[116] Referring to FIG. 20, first, decompression of the basic compression header illustrated in FIG. 9 is performed. In step 2001, the decapsulator 402 copies the channel identifier (CH-ID) field value of the corresponding connection to the connection identifier (CONN-ID) value. That is, the IP source and destination addresses corresponding to the connection identifier and the UDP source and destination ports are stored as values of the decompressed header. Thereafter, it is checked whether the L flag value of the packet received in step 2003 is set to "1". If the value of the L flag is 0, the process proceeds to step 2025 and stores information of 1 octet as the length field value of the UDP header. Save as the Length field value.
[117] In step 2007, it is checked whether an IPv4 packet is received. If the IPv6 packet is received, the process proceeds to step 2027 and sets the IP INFO field to the IPV6 Next Header information. If the IPv4 packet is received, the process proceeds to step 2009 and compares the value of the received IP_INFO field with the stored IP_INFO value of the past, and stores the increased difference as the identification field value of the IP. In addition, the received value is stored in the IP_INFO field of the header database. The protocol field value received in step 2011 is stored as a protocol field value of PPP. In this case, the protocol header compression scheme of RFC1661 is followed.
[118] Then, it is checked whether the value of the U plaque received in step 2013 is "1". If the value of the received U flag is 1, the process proceeds to step 2015 and stores the received Checksum field value as a value of the UDP Checksum field. Otherwise, the flow proceeds to step 2009 and the checksum is calculated and included as a UDP packet header.
[119] Then, it is checked whether the value of the M flag received in step 2017 is "1". If the value of the received M flag is 1 (that is, when fields having fixed values are changed), the decapsulator 402 extracts the information of FIG. 10 from the received packet. The decapsulator 402 identifies the first field identifier added in step 2011, and then detects the length information and the corresponding field name through the <Table 1>. In operation 2021, the decapsulator 402 reading the value of the field is stored in the field of the header to be reconstructed. In addition, the changed values are copied into the corresponding fields of the header database 493. If the M flag of the additional field identifier is not 0, the same process is repeated. On the other hand, if the field identifier is "00", the decapsulator 402 reads the length field of the corresponding additional field to detect the length of the additional field, and copies information corresponding to the length into the Options field of the IP header. . Thereafter, the decapsulator 402 adds a user data field to the end of the packet header reconstructed in step 2023. Then, the decompressed packet is transmitted to the upper communication protocol.
[120] Call Release Process
[121] The call release process is simple. When the call is released, the optimizer deletes the relevant information in the H-DB through the CONN-ID for that connection. Then, the used CONN-ID is returned so that another connection can reuse the CONN-ID.
[122] 12 and 13 illustrate an embodiment configuration in which the UDP / IPv4 & IPv6 / PPP header compression scheme according to the present invention is applied to a wired network and a wireless communication network.
[123] In the case of applying the present invention in a wired communication network, as shown in FIG. 12, two environments may be considered. As shown in Fig. 12A, a subscriber connects to a server through a modem device or a low speed communication link. In this case, the present invention applies to PPP or lower layer of PPP of subscriber equipment. In addition, even in the case of a server, it is applied as a function in the lower layer of the PPP or the PPP above the MODEM Pool supporting a plurality of subscribers. Accordingly, the UDP service between the subscriber and the server performs communication without recognizing the lower optimizer, and the optimizer automatically compresses and decompresses UDP / IP / PPP headers of traffic transmitted and received between them, thereby maximizing the efficiency of the wired link. do. In addition, even in the case of FIG. 12B in which the subscriber and the subscriber directly connect without the server, the optimizer automatically maximizes the efficiency of the wired link in a state in which the subscriber is not aware, thereby resulting in a higher transmission rate. Referring to the client / server architecture shown in FIG. 12A, the client includes a modem 1203 connected to a wired line and a protocol layer unit 1202 (UDP / IP / PPP / Optimizer) connected to the modem 1203. The server is composed of an application 1201 connected to the protocol layer 1202. On the other hand, a server is connected to a line and supports a plurality of subscribers, and a protocol pool (UDP / IP /) connected to the modem pool. PPP / Optimizer) and an application. In the example of the end-to-end architecture shown in FIG. 12B, two end terminals located at the end have the same configuration, and the end terminals are connected to the line. And a modem layer 1202 (UDP / IP / PPP / Optimizer) connected to the modem 1203 and an application 1201 connected to the protocol layer 1202.
[124] In the case of applying the present invention to a wireless communication network, as shown in FIG. 13, an optimizer may be applied to a Packet Data Serving Node (PDSN) or an Inter-Working Function (IWF). This is the case when the present invention is applied as an additional function of the PPP layer. Otherwise, the present invention can be applied to the Radio Frequency (RF) Layer 2 protocol of the BSS (Base-Station System) system. This works in an environment where PDSN / IWF does not recognize header compression. In the case of applying the present invention to a wireless network, it is possible to support improved transmission efficiency as in a wired network, and in particular, it is possible to support Internet telephony. In other words, it is possible to support Internet telephony requesting the same or less radio resources than the existing IS95A, IS95B, PCS. Looking at the architecture example in the wireless network shown in FIG. 13, it is largely composed of a mobile terminal, a base station system, and a PDSN / IWP. Looking at it as follows. First, the mobile terminal is composed of a protocol layer unit 1302 and an application 1301 on the base station system and the RF layer 1 and RF layer 2 for radio communication and the upper layer consisting of UDP / IP / PPP / Optimizer. The base station system 1303 includes an RF layer 1 and an RF layer 2 for communicating with the radio terminal, and a layer 1 and layer 2 for communicating with the PDSN / IWF, and a mobile processor. Meanwhile, the PDSN / IWF is a protocol layer unit 1305 composed of layer 1 and layer 2 for communicating with the base station system and an optimizer, PPP, IP, and UDP, and a PDSN / IWF module 1304 thereon. It is composed.
[125] 14 shows an RLP frame structure of RLP Layer2 in CDMA2000. When the transparent mode of the RLP is applied to the basic channel (FCH: fundamental channel) and dedicated control channel (DCCH: dedicated control channel), the supported traffic capacities are 160bits / 20ms and 256bits / 20ms, respectively. As mentioned earlier, the G.729 and G.723.1 protocols can be successfully supported as shown in Table 2 in an environment where the header of UDP / IP / PPP is compressed to at least 6 bytes. In addition, as shown in Table 3 below, IPv6 having a header size of 20 bytes can be successfully supported.
[126] DCCH / FCH-9.6 kbps (160 bits / 20 ms)DCCH / FCH-14.4 kbps (256 bits / 20 ms) G.729 (688bits / 20ms)Not supportedNot supported G.729 + Header Compression Scheme (256bits / 20ms)Not supportedSupport G.723.1 6.4 (456bits / 30ms)Not supportedNot supported G.723.1 6.4 kbps + Header Compression Scheme (240bits / 30ms)SupportSupport G.723.1 5.3 (424bits / 30ms)Not supportedNot supported G.723.1 5.3 kbps + Header Compression Scheme (208bits / 30ms)SupportSupport
[127] DCCH / FCH-9.6 kbps (160 bits / 20 ms)DCCH / FCH-14.4 kbps (256 bits / 20 ms) G.729 (848bits / 20ms)Not supportedNot supported G.729 + Header Compression Scheme (256bits / 20ms)Not supportedSupport G.723.1 6.4 (616bits / 30ms)Not supportedNot supported G.723.1 6.4 kbps + Header Compression Scheme (240bits / 30ms)SupportSupport G.723.1 5.3 (584bits / 30ms)Not supportedNot supported G.723.1 5.3 kbps + Header Compression Scheme (208bits / 30ms)SupportSupport
[128] As shown in Tables 2 and 3 above, support for the Dedicated Control Channel (DCCH) / Fundamental Channel (FCH) was not possible without compressing the headers of G.729 and H.723.1. However, by using the UDP / IP / PPP header compression scheme of the present invention, G.729 and G.723.1 can be supported in the wireless environment at the same or lower cost than the existing line-type telephone.
[129] The above has described a method of compressing a packet header of the UDP / IPv4 & IPv6 / PPP protocol. The present invention proposes a method of compressing a header of a UDP / IPv4 & IPv6 / PPP packet and a method of compressing a header of an RTP protocol which is widely used for supporting a real-time multimedia service. The header of the RTP may be delivered as traffic of a header according to the UDP / IPv4 & IPv6 / PPP header compression scheme proposed above without undergoing compression. However, the present invention proposes a method of providing higher efficiency since the header portion of the RTP is also compressed in a low speed wired and wireless environment.
[130] The header structure of the RTP protocol is shown in FIG. Among the protocol headers of the RTP, the V, X, CC, M, PT, SSRC and CSRC fields are fields that are hardly changed after the initial call setup. Therefore, fields that are changed at the time of packet transmission are limited to a sequence number and a timestamp. Therefore, the present invention describes an approach to maximize the compression effect by integrating the above-mentioned simplified UDP / IPv4 & IPv6 / PPP header and RTP header.
[131] The header structure according to the unified compression of the RTP / UDP / IPv4 & IPv6 / PPP protocol packet according to the present invention is shown in FIGS. 16 and 17. The difference between the two header structures is the structure with or without the UDP CHECKSUM field. If the traffic attribute is traffic that is not sensitive to errors or greatly affected by the error, the UDP CHECKSUM field is removed. Contains a UDP CHECKSUM field. In this case, the U flag is set to "0" when the UDP CHECKSUM field is not included, and set to 1 when the UDP CHECKSUM field is included.
[132] The fields added to the basic compression header of the UDP / IPv4 & IPv6 / PPP are described as follows.
[133] First, when the RTP header is compressed, the R flag is set to 1 so that the receiver decapsulator 402 can recognize that the RTP header information is included in the packet. The method of including the sequence number of the RTP header is as follows. In order to support the RTP, the IP info field is used as a 6-bit sequence field and a 2-bit RVD field. This also applies equally to IPv4 and IPv6. In the case of using the IPv4, the sequence field has a value according to Equation 1 as described above. In this case, if the sequence number increase level of the RTP is equal to the packet number increase value of the IPv4, the RVD field of the header has a value of '00'. Upon receiving the RTP header and the header of the compressed packet, the desulfurizer 402 increases the sequence value of the RTP at the same level as the increase value of the IPv4 identification. If the sequence number of the RTP is '1' more than the increase value of IPv4, the RVD is set to '01', and the received desulfurizer 402 sets the sequence number of the reconfigured RTP header to the increase value of the IPv4 identification to '1'. 'Increases a lot. Conversely, if the sequence number of the RTP is set to '10', the sequence number of the RTP is one less than the increase of the IP of the sequence number. The receiver's desulfurizer 402 has an increase of one less than the increase of the IPv4 identification. Rebuild the header. If the increase value of the RTP sequence number is 2 or more, the RVD field is set to 11, and 1 octet indicating the increased value is added to the optional field added by UDP / IPv4 / PPP after the UDP field. Add at the end.
[134] When using IPv6, the IP info field is filled according to Equation 2 below.
[135]
[136] The Simple Time-Stamp field replaces the existing time-stamp by Equation 3 below.
[137]
[138] Meanwhile, the receiver decapsulator 402 reconfigures the RTP header by adding an increase value of the Simple-Time-Stamp value to the stored Time-Stamp value. Therefore, the encapsulator 401 and the decapsulator 402 should generate and store a Simple Time-Stamp field when setting up a call. When the V, X and CC field values of the RTP header are changed, the encapsulator 401 transmits with the H flag set to "1". If the H flag is set to 1, the first 1 byte header information (V, P, X, CC fields) of RTP is added to the end of the header. In this case, when the value of the X field is changed, additional information fields of the RTP associated with the X flag of the RTP are further included. If the CC field is changed, the information of the CSRC field of the RTP is added.
[139] If the information of the PT field of the RTP is changed, the P flag is set to 1; otherwise, it is set to 0. At this time, when the P flag is set, a field of 1 octet for transmitting PT information is added to the end of the header, and PT information is stored in the corresponding field. If the SSRC field value of the RTP is changed, the S flag is set to "1", otherwise it is set to 0. If the S flag is set, a 4 octet field for transmitting SSRC information is added to the end of the header, and the SSRC information is stored in the corresponding field. The Q flag is a bit reserved for later. In doing so, the RTP header is an additional field of 2 bytes and is added to the basic structure of the UDP / IP / PPP header proposed above.
[140] As described above, the header structure of the UDP / IP / PPP protocol requiring at least 36 bytes is reduced to 4 to 6 bytes through the present invention. Therefore, in a low-speed wired and wireless environment, a small communication capacity can be used to transmit and receive user traffic as much as possible, thereby increasing the efficiency of the communication link. This can provide for faster communication links from the user's point of view. In addition, the present invention enables the support of real-time multimedia services based on a connectionless UDP communication protocol. In particular, the IS95A, IS95B, PCS, and IMT2000 can support 9.6 or 14.4kbps over the air in existing line phones, which can provide Internet telephony services required at the same or lower capacity in a wireless environment. This solves the problem that the existing line-type wireless telephone has to use the expensive leased line in the wired network while having the path of 'MS-BSS-MSC (Mobile Switching Center)', and thus the packet of 'MS-BSS-PDSN / IWF' Enable wired network support. Therefore, the cost required for the wired network is significantly reduced. In addition, the present invention additionally provides a scheme for supporting the RTP protocol on top of the UDP / IP / PPP protocol. In this case, the RTP / UDP / IP / PPP protocol header, which requires 52 bytes, is reduced to 6-8 bytes. Through this, it is possible to transparently support Internet telephony with existing wired Internet telephone terminals or exchanges using RTP.
权利要求:
Claims (22)
[1" claim-type="Currently amended] In a UDP / IP / PPP header compression apparatus in a communication system,
An encapsulator for receiving UDP, IP, and PPP packets from the protocol layer, extracting a header from the packets, compressing the header with a compression header of a predetermined size, and delivering the compressed header to a lower protocol layer;
A decapsulator for receiving a compressed packet through a communication link, releasing the compressed packet, decomposing the original packet into UDP, IP, and PPP packets, and delivering the compressed packet to the upper protocol layer;
And a header database that stores information for header compression and decompression of the encapsulator and the decapsulator.
[2" claim-type="Currently amended] The method of claim 1,
And a connection tracer for driving the connection establishment and disconnection related functions of the PPP.
[3" claim-type="Currently amended] The method of claim 1, wherein the compression header,
A field for storing connection identification information for the established communication link (CH-ID),
A field (LENGTH) for storing length information of the compressed header;
A field (IP-INFO) for modifying and storing an IDENTIFICATION value of the IP packet by a predetermined rule;
A field for storing a protocol field (PROTOCOL) value of the PPP packet;
A field for storing a checksum field value of the UDP packet (UDP CHECKSUM),
And an OPTIONAL FIELD for storing modified fields and additional field values.
[4" claim-type="Currently amended] The method of claim 1,
And the IP packet is one of IPv4 and IPv6.
[5" claim-type="Currently amended] The method of claim 1, wherein the header database,
Connection identification information (CONN-ID) for identifying the established communication link,
Information for identifying the IP packet (IP TYPE),
And store field values stored in headers of the UDP, IP, and PPP packets.
[6" claim-type="Currently amended] In a compression header structure in which UDP, IP, PPP packet headers are compressed into headers having a predetermined size in a communication system based on the UDP / IP / PPP communication protocol.
A field for storing connection identification information for the established communication link (CH-ID),
A field (LENGTH) for storing length information of the UDP packet;
A field (IP-INFO) for modifying and storing an IDENTIFICATION value of the IP packet by a predetermined rule;
A field for storing a protocol field (PROTOCOL) value of the PPP packet;
And a field (UDP CHECKSUM) for storing a checksum field (CHECKSUM) value of the UDP packet.
[7" claim-type="Currently amended] The method of claim 6, wherein the compressed header structure,
A field for storing identification information on the changed field compared to the previous packet (FIELD IDENTIFIER),
Compressed header structure, characterized in that it further comprises a field (FIELD INFORMATION) for storing the field value of the changed field.
[8" claim-type="Currently amended] The method of claim 6, wherein the compressed header structure,
A field indicating whether an additional field (OPTION) of the IP packet exists;
A field for storing length information of the additional field;
And a field for storing the additional field value.
[9" claim-type="Currently amended] In a compression header structure in which RTP, UDP, IP, and PPP packet headers are compressed into a header having a predetermined size in a communication system based on the RTP / UDP / IP / PPP communication protocol.
A field for storing connection identification information for the established communication link (CH-ID),
A field (LENGTH) for storing length information of the UDP packet;
A field (SEQUENCE) for modifying and storing an IDENTIFICATION value of the IP packet according to a predetermined rule;
A field (RVD) for storing information indicating a relation between a sequence number (SEQUENCE NUMBER) increment of the RTP packet and a packet number increment of the IP packet;
And a field for modifying and storing a time stamp of the RTP packet by a predetermined rule.
[10" claim-type="Currently amended] The method of claim 9, wherein the compressed header structure,
An identification field (H, P, S, Q) indicating whether field values of the RTP packet are changed;
And a field for storing values of the changed fields.
[11" claim-type="Currently amended] The method of claim 9, wherein the compressed header structure,
And a field (UDP CHECKSUM) for storing a checksum field (CHECKSUM) value of the UDP packet.
[12" claim-type="Currently amended] A method for compressing UDP, IP, PPP packet headers into a compression header of a predetermined size in a communication system based on the UDP / IP / PPP communication protocol,
The compressed header includes an LR, U, and M flag, a channel identifier field (CH-ID), a length information field (LENGTH), an IP information field (IP-INFO), a protocol field (PROTOCOL), a checksum field (UDP CHECKSUM), and an addition. Include at least an OPTIONAL FIELD,
Receiving the UDP, IP, and PPP packets from an upper protocol layer unit, recording connection identification information on the established communication link in the channel identifier field, and setting the R flag;
Recording the length field value of the UDP packet in the length information field and setting the L flag;
Modifying an IDENTIFICATION value of the IP packet according to a predetermined rule and recording it in the IP information field;
Recording a protocol field value of the PPP packet in the protocol field;
And writing a checksum field value of the UDP packet in the checksum field, and setting the U flag to generate a basic compression header.
[13" claim-type="Currently amended] The method of claim 12,
And the channel identifier field is composed of 4 bits.
[14" claim-type="Currently amended] The method of claim 12,
The protocol field value of the PPP packet is fixed to 8 bits according to the protocol header compression of RFC1661 and recorded in the protocol field.
[15" claim-type="Currently amended] The method of claim 12,
When the UDP, IP, PPP packets are compared with previous packets and the changed field exists, the field for setting the M flag and recording identification information for identifying the changed field and the field value of the changed field are recorded. Copying a field to the additional field.
[16" claim-type="Currently amended] The method of claim 12,
When the additional field (OPTION) is present in the IP packet, the M flag is set, and the field indicating the identification field indicating the additional field of the IP packet and the length information of the additional field and the field value of the additional field are set. Copying a field to be recorded to the additional field.
[17" claim-type="Currently amended] The method of claim 12,
The identification field value of the IP packet is characterized by being modified by the following equation (4).
IP information field value = IPv4 identification field value% 65
[18" claim-type="Currently amended] A method for decompressing a compression header in which UDP, IP and PPP packet headers are compressed to a predetermined size in a communication system based on the UDP / IP / PPP communication protocol,
The compressed header includes LR, U, and M flags, a channel identifier field (CH-ID), a length information field (LENGTH), an IP information field (IP-INFO), a protocol field (PROTOCOL), a checksum field (UDP CHECKSUM), and an addition. Include at least an OPTIONAL FIELD,
Detecting a connection identifier corresponding to the channel identifier field when receiving a packet having the compressed header, and recording information corresponding to the connection identifier in corresponding fields of decompressed headers;
Recording length information of different lengths in the length field of the UDP packet according to whether or not the L flag is set;
Comparing the IP information field with a value of an IP information field of a previous packet and recording the increment in an identification field of the IP packet;
Recording the protocol field value in a protocol field of the PPP packet;
Recording the checksum field value in the checksum field of the UDP packet when the U flag is set;
And when the M flag is set, identifying the fields recorded in the additional field and copying the fields to the corresponding fields of the decompressed headers.
[19" claim-type="Currently amended] A method for compressing RTP, UDP, IP, and PPP packet headers with a compression header of a predetermined size in a communication system based on the RTP / UDP / IP / PPP communication protocol,
The compressed header includes L, R, U, M, H, P, S, and Q flags, a channel identifier field (CH-ID), a length information field (LENGTH), an IP information field (IP-INFO), and a protocol field (PROTOCOL). ), At least a simple time stamp field (SIMPLE TIME STAMP), an additional field (OPTIONAL FIELD),
Receiving the RTP, UDP, IP, and PPP packets from an upper protocol layer unit, recording connection identification information on the established communication link in the channel identifier field and setting the R flag;
Recording the length field value of the UDP packet in the length information field and setting the L flag;
Recording the protocol field value in a protocol field of the PPP packet;
Setting the R flag when the RTP packet header is added to the compression header;
The IP information field is divided into a sequence field and an RVD field, and the sequence number field of the RTP packet is modified and recorded in the sequence field, and the increment of the sequence number of the RTP packet and the IP Recording information indicative of a relationship with an increase in packet number of a packet in the RVD field;
Modifying a value of a timestamp field of the RTP packet in the simple timestamp field;
Setting the H flag when the V, X, CC field values of the RTP packet are changed, and recording the changed field values in the additional field;
Setting the P flag when the RT field value of the RTP packet is changed, and recording the changed RT field value in the additional field;
Setting the S flag when the SSRC field value of the RTP packet is changed, and recording the changed SSRC field value in the additional field.
[20" claim-type="Currently amended] The method of claim 19,
The IP packet is one of IPv4 and IPv6 packets.
[21" claim-type="Currently amended] The method of claim 19,
And modifying the sequence number field value of the RTP packet by the following Equation 5 and recording the same in the sequence field.
Sequence field value = RTP sequence number field value% 65
[22" claim-type="Currently amended] The method of claim 19,
The timestamp field value of the RTP packet is modified by Equation 6 and recorded in the simple timestamp field.
Simple timestamp field value = RTP timestamp field value% 4096
类似技术:
公开号 | 公开日 | 专利标题
USRE47719E1|2019-11-05|Relocating context information in header compression
US9125088B2|2015-09-01|Dynamic robust header compression
JP5139566B2|2013-02-06|Method and apparatus for providing real-time packetized voice and data services over a wireless communication network
JP3600189B2|2004-12-08|Packet transmitting / receiving apparatus and packet transmitting method
EP1220498B1|2008-06-11|Method and system for transmission of headerless data packets over a wireless link
EP0804845B1|2009-07-22|Packet radio system, and a terminal equipment for a packet radio system
RU2289204C2|2006-12-10|Method and system for mobile communications
US8045585B2|2011-10-25|Method and apparatus providing media aggregation in a packet-switched network
CA2602815C|2010-12-14|Method and apparatus for transmitting/receiving packet data using pre-defined length indicator in a mobile communication system
JP4582565B2|2010-11-17|Robust header compression in packet communication
CA2168351C|2002-04-30|Method and apparatus for connecting a node to a wireless network using a standard protocol
US6765909B1|2004-07-20|Method and apparatus for providing support for multiple QoS levels within a third generation packet data session
FI107000B|2001-05-15|Title compression in real-time services
US6928289B1|2005-08-09|Device and method for communicating packet voice data in mobile communication system
US7054954B2|2006-05-30|Defining context identifier in header field compression
EP2375654B1|2012-10-03|Radio access network and terminal with robust header compression
JP4808749B2|2011-11-02|Packet data transmission method for communication system
ES2267821T3|2007-03-16|Method and apparatus of processing of data packages.
DE60307406T2|2007-08-23|Packet transmission system and packet receiving system
RU2407205C2|2010-12-20|METHOD AND DEVICE TO INCREASE EFFICIENCY OF ROBUST HEADER COMPRESSION | WHEN COMING ACROSS SILENCE SUPPRESSION
US6795435B1|2004-09-21|Method for transmitting data transmission flows
EP2098035B1|2010-11-17|Improved header compression in a wireless communication network
Bormann et al.2001|Robust header compression |
DE60130367T2|2008-06-12|Method for dynamically mixing packet header suppression techniques
KR100883063B1|2009-02-10|Method for relocating context
同族专利:
公开号 | 公开日
KR100689473B1|2007-03-08|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2000-08-29|Application filed by 윤종용, 삼성전자 주식회사
2000-08-29|Priority to KR1020000050505A
2002-03-07|Publication of KR20020017291A
2007-03-08|Application granted
2007-03-08|Publication of KR100689473B1
优先权:
申请号 | 申请日 | 专利标题
KR1020000050505A|KR100689473B1|2000-08-29|2000-08-29|Apparatus and method for compressing protocol header in communication system|
[返回顶部]